XBRL, defined by the AICPA
XBRL-Extensible Business Reporting Language- is a toolbox for creating accounting, finance, and business reports. It is an open standard which supports information modeling and the expression of semantic meaning commonly required in business reporting. XBRL is XML-based. It uses the XML syntax and related XML technologies such as XML Schema, XLink, XPath, Namespaces, etc. to articulate this semantic meaning. One use of XBRL is to define and exchange financial information, such as a financial statement. The XBRL Specification is developed and published by XBRL International, Inc. (XII). The XBRL US organization has been charged with developing the US GAAP specifications.
XBRL is a standards-based way to communicate business and financial information. These communications are defined by metadata set out in taxonomies. Taxonomies capture the definition of individual reporting concepts as well as the relationships between concepts and other semantic meaning.
A language for the electronic communication of business and financial data which is set to revolutionize business reporting around the world. The Center for Audit Quality (Center or CAQ) has developed a section on our Web site to include information about the XBRL initiative. The Center encourages our member firms to learn more about XBRL in order to understand how to obtain more rapid and reliable data on a company's financial performance which helps the flow of formation between investors and companies; greatly reduce effort and costs in gathering and analyzing data for benchmarking purposes; focus efforts on analysis and value-added work and to simplify and automate tasks makeing the work environment more efficent and cost friendly.
The SEC has embraced XBRL by proposing and adopting a final rule on an XBRL Voluntary Program. This program will allow registrants to submit voluntarily supplemental tagged financial information using the XBRL format as exhibits to specified EDGAR filings under the Securities Exchange Act of 1934 and the Investment Company Act of 1940. In addition, the PCAOB has issued guidance for auditors on how to audit these voluntary filings.
XBRL is an XML based taxonomy with which users can prepare, publish (in a variety of formats), exchange and analyze financial statements and the information they contain. An XBRL Instance Document is a business report, such as a financial statement prepared to the XBRL specification which is user friendly. The meaning of each value in the Instance Document is explained by the taxonomy. Therefore, any XML document containing XBRL elements is an instance document.
XBRL is developed by XBRL International, a consortium sponsored by the American Institute of Certified Public Accountants started in 1999. This group is committed to developing and promulgating a world-wide standard, and corresponding taxonomies, for storing or exchanging business reporting information.
XBRL is a language for the electronic communication of business and financial data which is revolutionizing business reporting around the world. It provides major benefits in the preparation, analysis and communication of business information. It offers cost savings, greater efficiency and improved accuracy and reliability to all those involved in supplying or using financial data. XBRL is bringing new efficiencies to banking regulators worldwide and is also being highly promoted by the U.S. Securities and Exchange Commission (SEC). Other important backers of XBRL include the AICPA, the XBRL International , and the XBRL US. An important branch of the XBRL standards is XBRL GL.
XBRL GL, the Global Ledger, is a standard for representing and communicating the information found in operational and accounting systems for data consolidation, data migration and archival purposes, bringing new efficiencies for integrating disparate systems and enabling new controls environments. XBRL allows it to be brought together, analysed and used in a highly cost-effective way, overcoming the inefficiencies of different accounting systems or approaches.
The Global Ledger allows the representation of anything that is found in an ERP systems: setup files, master files, transaction files and history files, and deals with information both financial and non-financial. It does not require a standardised chart of accounts to gather information, but it can be used to tie legacy charts of accounts and accounting detail to a standardised chart of accounts to improve communications within a business.
XBRL GL is reporting independent. It collects general ledger and after-the-fact receivables, payables, inventory and other non-financial facts, and then permits the representation of that information using traditional summaries and through flexible links to XBRL for reporting.
XBRL GL is system independent. Any developer can create import and export routines to convert information to XBRL GL format. This means that accounting software developers need only consider one design for their XML import/export file formats. Application service providers can offer to supply XBRL import and output so end-users can more easily use their own data. Companies developing operational products, such as point of sale systems or job costing, or reporting tools can link with many accounting products without needing specialised links to each one.
Taxonomies
Lists of elements and relationships for specific reporting purposes, such as reporting financial information under US GAAP. Each tag used in an XBRL instance document must be defined as an element in an XBRL taxonomy.
Taxonomies are a collection of XML schema documents and XML documents called linkbases by virtue of their use of XLink. The schema must ultimately extend the XBRL instance schema document and typically extend other published XBRL schemas on the xbrl.org website.
XML taxonomies are "vocabularies" or "dictionaries" created by a group in order to exchange information. In the future, there will be many XML taxonomies used to describe all types of data. What will drive the development of these taxonomies are industry groups, governmental agencies and other organizations.
XBRL Taxonomy Components (Files) There are six basic files that comprise an XBRL Taxonomy: Approved taxomony: One that has been given approved status by XBRL International. It must comply with the guidelines in the Financial Reporting Taxonomy Architecture and have been through an open review process and been used to create a number of XBRL instance documents. US-GAAP Taxonomy: The taxonomy that has been approved for XBRL use can be easily found at http://www.xbrl.us/Taxonomies/Pages/default.aspx . Once on this website, you should go to the XBRL US GAAP Taxonomies 1.0 link. From there, select which industry you will need and start locating your element name. The US GAAP Taxonomies are are current as of December 4, 2008 and are open for public review until January 15, 2009. The press release associated with this Public Review is located at http://www.xbrl.us/press/Pages/20081125.aspx.
Schema
The XBRL taxonomy schema file defines the actual concepts that make up an XBRL taxonomy. It gives their names, their data types, period type, whether you can report about them etc. The properties of concepts (elements) are defined in the XBRL Specification. The reserved word schema is the required root element name for all XML schema documents.
An XML schema is a description of a type of XML document, typically expressed in terms of constraints on the structure and content of documents of that type, above and beyond the basic syntax constraints imposed by XML itself. An XML schema provides a view of the document type at a relatively high level of abstraction. Schemas define Item and Tuple "concepts" using elements. Concepts provide names for the fact and indicate whether or not it's a tuple or item, what type of data it contains (monetary, numeric, fractional, textual, etc.) among some other metadata. Items and Tuples can be regarded as "implementations" of concepts, or specific instances of a concept. A good analogy for those familiar with object oriented programming would be that Concepts are the classes and Items and Tuples are Object instances of those classes. In addition to defining concepts, Schemas reference linkbase documents.
This article is a beginners guide (from a beginner, to other beginners) on writing simple XSDs. If you're new to them, check it out. A beginner's guide to xsd (xml shcemas)
Linkbases
An XBRL linkbase file contains the explicit relationship definitions between the concepts defined in the XBRL schema. There are five linkbase types defined by the XBRL version 2.1 specification:
1) The label linkbase allows the user to attach labels with different roles and languages to a given concept.
2) The reference linkbase the user to attach external information (sources) to concepts.
3) The presentation linkbase defines how concepts are nested and ordered.
4) The calculation linkbase defines how values of concepts should sum up from one to another.
5) The definition linkbase allows the user to define additional semantics.
Linkbases are a collection of Links, which themselves are a collection of locators, arcs, and potentially resources. Locators are elements that essentially reference a concept and provide an arbitrary label for it. In turn, arcs are elements indicating that a concept links to another concept by referencing the labels defined by the locators. Some arcs link concepts to other concepts. Other arcs link concepts to resources, the most common of which are human-readable labels for the concepts.
Element
A matching beginning and ending tag set and its contents, or an empty element. An XML element can contain a data item or other elements nested within it. It is the basic unit of content in the XML document. The tag name is always contained within <> brackets and the ending tag name starts with a / slash.
Complex Elements
XML elements that contain other elements nested within or elements with attributes. They must be defined with a complexType element in an XML schema. Examples of complex elements
Simple Elements
XML elements that do not contain other elements or attributes. They contain a data item and must be defined with a data type in an XML schema. Usually used for data that is self-containing and needs no further breakdown. Examples of simple elements
Attributes
Add meaning to a specific XML element. XML attributes always have a name-value pair in the format: attributeName="attributeValue". They can appear in any XML element and are always found in the beginning element name tag. Helps to describe the element in terms that can help the user better understand the data. attribute examples XML attribute descriptions
Namespace Attribute
A namespace declaration in the form of xmlns:prefix="URI of namespace" usually appearing in the start tag of a document's root element.
In XML, the namespace specification enables the names of elements and attributes in an XML document to be unique, similar to the role of namespaces in a programming language. Using XML namespaces, XML documents may contain element or attribute names from more than one XML vocabulary.
Stylesheet
A generic term used to describe XSLT documents. It refers to the original purpose of the XSLT language: to apply style to XML documents. Styleheet allows an XML document to be transformed into an output that is more human friendly and understandable
XML-stylesheet
The reserved word for the instruction that ties an XML document to an XML stylesheet. As used XSLT, it appears as follows in the prolog of an XML document: URI of the stylesheet document"?>
xsl:stylesheet
The root element of an XSLT document. "stylesheet" is the key word for the root element, and "xsl" is its namespace identifier.
id attribute
Required on both the context and unit elements in an XBRL instance document. It is used for reference purposes on individual XBRL items reported in the instance document.
entity element
Identifies the entity doing the reporting in an XBRL instance document. It must contain an identifier element with a scheme attribute:
It can also contain a scenario element with values such as budgeted, restated, pro forma, etc. Also, it can incorporate web addresses such as the URL for the stock exchange which the reporting company is traded on.
Unit element
Identifies the unit of measure that applies to numeric items in an XBRL instance document. It must contain an id attribute for reference purposes and a measure element:
<unit id="a unique unit identifier"><measure>a specific unit of measure
</measure></unit>
schemeRef element
First child element of the xbrl root element in an XBRL instance document. It must have two XLink attributes:
<schemaRef xlink:type="simple" xlink:href="the URI of an XBRL taxonomy schema"/>
Period element
Identifies the period of time for which items are being reported in an XBRL instance document.
It must contain either an instant element or elements to identify a duration of time:
<period>
<instant>__//a specific date//__</instant>
</period>
Which is useful for documents such as the balance sheet, which presents financial data relevant to a specific time instead of a period of time.
Or
<period>
<startDate>__//a specific date//__</startDate>
<endDate>__//a specific date//__</endDate>
</period>
Which is useful for documents such as the income statements and Cash flow statements, which present data relevant to a period of time rather than a specific date.
Or - it can contain a element for long-lived items.
<forever>
Identifier element
Required child element of an entity element. It must contain a scheme attribute and a value that uniquely identifies the entity doing the reporting:
Measure element
Required child element of a unit element. It identifies a specific unit of measure for numeric items in an XBRL instance document and is required to have the form:
<measure>a specific unit of measure</measure>
Instance documents
Well-formed XML documents that follow the rules for the class of documents known as XBRL instance documents as defined in the XBRL Specification. XML is a set of rules and syntax that provides a foundation usede to create XML documents and other languages and specifications that extend the XML family of technologies. XBRL builds on the XML foundation to create a specification for business reporting, including financial and other business performance reporting. Based on the XML foundation, the XBRL is a second set of rules and syntax to follow to create XBRL "instance documents" and extensions. XBRL documents are referred to as "instance documents" because each one is an instance of a class of documents described in the XBRL Specification. Like all XML specifications, the XBRL specification is quite complex and XBRL instance documents look complex to the uninformed user. Instance documents contain tags describing the data, the tags on an instance document are defined in a Schema, and the relationships between tags are defined in Linkbases. The combination of Schemas and Linkbases are known as Taxonomy.
Prologue
The first part of an XML document that contains processing instructions to be used by an XML processor and often contains comments. The prolog always appears before the root element. You can have one or many prologues, but each XML document must begin with the prologue below. Another prologue which can be useful is linking your XML document to an XLST Schema document. To do this insert the following prologue after the first prologue below: <?xml-stylesheet type="text/xsl" href="TheNameofYourSchemaDocument.xsl"?>
<?xmlversion="1.0"encoding="UTF-8"?>
Well-formed XML documents
Documents that follow the basic rules (one and only one root element; matching beginning and ending element names; all elements must be properly nested; all elements can contain attributes) for all XML documents and can therefore be processed by an XML processor.
XML, a well-formed document must conform to the following rules, among others:
Non-empty elements are delimited by both a start-tag and an end-tag.
The first line of the XML document must contain the prologue.
The root element must enclose all other elements in the document.
Empty elements may be marked with an empty-element (self-closing) tag, such as . This is equal to .
All attribute values are quoted with either single (') or double (") quotes. Single quotes close a single quote and double quotes close a double quote.
Tags may be nested but must not overlap. Each non-root element must be completely contained in another element.
The document complies with its declared character encoding. The encoding may be declared or implied externally, such as in "Content-Type" headers when a document is transported through HTTP, or internally, using explicit markup at the very beginning of the document. When no such declaration exists, a Unicode encoding is assumed, If the mark does not exist, UTF-8 encoding is assumed.
Element names are case-sensitive.
Root Element
The first element in an XML document. It is the parent element for the entire XML document - often referred to as the "document" element. All other elements in the XML document are nested within in.
Empty Elements
XML elements that do not contain a data item or other elements nested within and there have a special format that includes a "/" preceding its closing bracket.
Simple linking
The linking capability of HTML as seen in Web pages. It is unidirectional from a source document to a target document.
Templates
Wording for a set of XSLT (a template matching language) instructions. Templates are known as a set of rules that a document must follow.
xsl:template
xsl:template is used to identity the beginning of a template in an XSLT document. All transformation instructions takeplace within the initial template. Instructions such as <xsl:template match="/"> can be used to format the entire source document.
XSLT processor
A software package that can process XSLT instructions to transform XML documents. Internet Explorer is an example of software that can process XSLT script and transform it into an XML document.
Scripting language
A programming language that is "interpreted" by a processor as the code is being processed.
Extensible Stylesheet Language for Transformation (XSLT)
An easily understood but very powerful scripting language for transforming XML documents from one form to another. XSLT is a subset of XSL and is part of the XML foundation.
xsl:value-of select="a node"
An XSLT instruction to find "a node" and "select" its value for inclusion in a result document.
4/5/2008 (Don Cory):
I found the following site while doing the homework for chapter 4. It is the International Accounting Standards Committee Foundation and contains the latest news, online tools, and a useful glossary for XBRL in the international community. Even though It is an international organization I found information that helped me understand our material to a greater degree. The latest news includes the near release of the International Financial Reporting Standards (IFRS) Taxonomy for 2008: iasb.org
Introduction to XBRL
There are many stages in the financial reporting supply chain. These include the prperation, approval, audit, analysis, and use of the financial statements.
Participants in the supply chain include accountants working within organizations, company management, boards of directors, audit comittees, outside auditors, standard setters, regulators, investment bankers, lawyers, credit rating agencies, investors, and others.
XBRL could be a useful tool to help all these particpants find and interpret the information. XBRGL takes this a set further by attempting to have a standard for all the information going into the supply chain.
Here is a review of CH's 1 - 4
Business data – accounting and financial data
CH 1
Extensible- can be added to (if rules are followed)
Markup data surrounded by tags which add meaning (tagged)
Language- method of communication
XML- extensible markup language,
language used to add the meaning and context to data
allows data to written (marked up) in a universal way so it can be unambiguously understood
XBRL- extensible business reporting language
Why? To add meaning (tags) and context (the hierarchy) to business data making it understandable, reusable and processed by a computer, data is transmitted more effectively and efficiently as information across networks, allowing manual processes to be automated.
Business advantages of XBRL- why markup business data? So it can be better processed by computers enabling the data to be analyzed, reported, compared and understood, XBRL is the tool used to make reporting more effective and efficient
XBRL International- head authority on XBRL rules, trying to create a standard set of tags for all business information. Made up of over 400 companies, organizations and government entities.
XBRL US - responsible for developing US GAAP standards
XBRL Specifications- defines rules and syntax for XBRL instance documents and taxonomies
Tags- By putting tags around data you add meaning to raw data making it information
XBRL Taxonomies- defines the tag names that represent business data in an instance document
Leads to- each piece of data reported can be traced to a specific entity, time and currency (unit).
Benefit- result is the XBRL instance document can be validated, stored, processed and transmitted by a computer, and the data contained in the document can be analyzed, compared, reused and understood
Meta-Data- data that’s marked up (tagged) to adds meaning to the data, data about data. XBRL is an example of meta-data.
XBRL Instance Document- instance b/c it is an instance of a class of documents described in the XBRL specifications, contain facts reported by a specific entity at a specific time and currency under identifiable guidelines (GAAP), make accounting information transparent
Benefit - the standardized representation of accounting and financial information and is easily understood by third parties.
CH 2
XML
Impossible to determine what the information contained in the document will be used for, XML is case sensitive
Design goals- usable over the web, support many applications and be human readable
Specifications- describes the rules a XML document must follow to be well formed and valid
Well formed- follow the rules of the XML specifications and can be processed
Valid- follow additional rules for specific classes of XML documents (Schema, DTD), data is tagged in a nested parent-child hierarchy
Element- a beginning and ending tag set, they don’t need to contain data, can contain attributes, no spaces use “_”, cant start name with xml
Empty element- doesn’t contain a value or have any nested elements only attributes, always ends with “/”
Attributes- adds additional data about a element in the beginning tag, can have many, can use to distinguish b/w elements or restrict the acceptable values
attrbuteName=”attributeValue”
Root element- parent element of the entire document (document element, node), all other elements are nested with in it, document always begins (after prolog) and ends with the root – XBRL doc root element name is “xbrl”, Schema doc root is “schema”. An XML document may have one and only one root element.
Simple elements are elements that contain data values
Complex elements are elements that contain other elements
Prolog- contains the processing instructions for the document composed of an XML declaration and the version of XML used, may contain a statement about what the purpose and/or file name of the document is
UBL refers to the purchase of goods and services as the "procurement process" and the selling, delivery and invoicing of these goods and services as the "fulfillment and billing processes"
Chapter 3 Summary There are several XML languages that form the foundation for validating and processing XML documents and building XML vocabularies, such as XBRL. The XML Schema language is the language used to build XML schema documents and is the foundation language for all XML languages and vocabularies. XML schema documents define each element and attribute that can appear in a class of XML documents and the overall structure of such documents. XML schema documents are designed to be read by XML-enabled software applications and used to validate instances of the class of XML documents they define. Because SML is a foundation language for the creation of other languages, XML vocabularies are being developed all around the world for a variety of purposes. XML Namespaces is a foundation language used to identify each XML vocabulary. XML namespaces are declared in the root element of an XML document and each is assigned a unique prefix to be used to qualify elements and attributes that appear in the XML document. The XML Linking Language (XLink) is a foundation language to enable sophisticated linking capabilities in XML documents. It specifies a set of attributes to be used to create multidirectional links and relationships between elements in XML documents and other addressable resources.
Purpose of XML Schema: to define rules that XML document must follow.
Schema is an well-formed XML document.
Schema defines: 1) each element and attribute that appears in the XML document 2) overall structure
Each XML vocabulary schema: 1) is created for specific purpose 2) has its own XML name space which is a unique identifier (URI-Universal Unique Identifier). XML name spaces identify source of schema.
By identifying each schema’s location with an XML name space we can differentiate the elements and attributes defines in one schema from the other schema.
2 Types of schema:
1) Common aggregate components schema defines structure of complex elements with a CAC prefix
2) Common basic components schema defines elements with CBC prefix. Basic Components Elements have simple content or an attribute such as <Base Quantity unitCode=”Unit”>1</Base quantity> (although BaseQuantity os an is considered to be complex element because it has an attribute that tells how the simple content value is measured)
XBRL instance documents are reports that contain facts, generically referred to as “items,” reported by a specific entity at a specific point in time. XBRL instance documents have a prescribed set of elements and a prescribed format.
XBRL Instance Document Format ·The root element is xbrl. The root element will contain all applicable namespace declaration attributes. example: <xbrl xmlns:us-gaap="http://xbrl.us/us-gaap/2008-03-31" xmlns:xlink="http://www.w3.org/1999/xlink"> </xbrl> ·The first child element is a schemaRef element. It is required to have two attributes: xlink:type=”simple” and xlink:href=”the URI of a taxonomy schema”. There can be more than one schemaRef element and they can be followed by linkbaseRef elements. example: <schemaRef xlink:type="simple" xlink:href="http://www.xbrl.us/us-gaap/1.0/elts/us-gaap-std-2008-03-31.xsd"/> ·It must have a least one context element that must contain an entity element and a period element. It can optionally contain a scenario and a segment element. example: <context id="MYBKYE2007"> <entity> <identifier scheme="http://www.nasdaq.com">MYBK</identifier> </entity> <period> <instant>2007-12-31</instant> </period> </context> ·If numeric items are being reported, it must contain a unit element with an appropriate measure element. example: <unit id="USD"> <measure>iso4217:USD</measure> </unit> ·It must have at least one item. The name of the item must be defined as an element in one of the taxonomy schemas identified in a schemaRef element. The item must also have a contextRef attribute and if it is numeric, a unitRef and a decimals or a precision attribute. example: <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="MYBKYE2007" unitRef="USD" balance="debit" decimals="0">5393000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
Chapter 5 Summary
XSLT documents are XML documents that contain instructions to apply to nodes in an XML source document to transform it into an XML result document. An XSLT processor reads both the XSLT document and the XML source document, interprets the XSLT instructions, and the applies them to the source documents to create an XML result document. Since all documents being processed are XML documents, XSLT transformation can be accomplished by any up-to-date XML-enabled software, eliminating the need for proprietary software and expensive hardware. <?xml version="1.0" ?> - <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:us-gaap="http://www.xbrl.us/us-gaap/2008-03-31" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.0"> **-** <xsl:template match="/"> **-** <HTML> **-** <CENTER> **-** <H3> Current Assets and Liabilities Report <BR /> MyBikes.com <BR /> As of: <xsl:value-of select="instant" /> </H3> **-** <TABLE BORDER="0"> **-** <TR> **-** <TD> <xsl:value-of select="us-gaap:CashAndCashEquivalentsAtCarryingValue/@label" /> </TD> **-** <TD align="right"> <xsl:value-of select="format-number(//us-gaap:CashAndCashEquivalentsAtCarryingValue,'$#,##0')" /> </TD> </TR>
Appendix: XBRL--Global Ledger
XBRL GL is a set of taxonomies to standardize the detail found in reports such as Chart of Accounts, Journal Entries, Source Documents, etc.
The required elements for XBRL GL are as follows:
<xbrl...>
<schemaRef...>
<context...>
<unit...>
<gl-cor:accountingEntries...>
<gl-cor:documentInfo...>
<gl-cor:entityInformation...>
<gl-cor:entryHeader...>
<gl-cor:entryDetail...>
</gl-cor:accountingEntries>
</schemaRef>
</xbrl>
The "Document Information" will provide descriptions of the actual accounting entries, such as period covered start and end, period count, period unit, etc.
The "Entity Information" will provide descriptive information about that Entity's accounting entries, such as entity phone number, address, fiscal year start and end, etc.
"Entry Information" does exactly what it sounds like; it provides information, such as journal description, posting codes, responsible person, etc.
Finally, "Entry Detail" drills down to the details of financial information, such as sub-account information, entry accounting methods, purposes of accounts, etc.
The goal of XBRL GL is to make it possible and make it more efficient to represent journal entries, general and special ledger information, and operations information in a way that is readable and useable across the board.
Final Exam Review (Spring 2011)
XML
XML - Extensible Markup Language
XML is a meta-language used to create other XML documents and other vocabularies for specific purposes. It describes basic rules and syntax that XML documents must follow instead of a specific vocabulary itself.
• X - Extensible: Tags extend use beyond original intended use
• M - Markup: Data surrounded by tags which add meaning
• L - Language: Communication method
Applications
• Instance Document .xml: contains the data
• Schema Document .xsd : describes allowed structure (data types, element names) of instance document
• Stylesheet .xsl: formatting instructions for data in the instance document
Element - a matching beginning and ending tag name, and its contents, or an empty element. It is the basic unit of content in an XML document. An element can have one and only one parent, except the root element.
Simple Element – elements containing data values
Complex Element - elements containing other elements nested within them (complex - parent) or elements with attributes (complex - attribute)
Empty Element – not containing any data value or other elements nested within; opens and closes in the same tag
• Prologue - containing processing instructions to be used by an XML processor and comments
<?xml version="1.0" encoding=UTF-8”?>
<!-- Enter comments here -->
• Root Element - the first element and the parent element for the entire XML document, enclosing all the other elements nested within it. The ending root element name is the last one in the document. The root element’s name should reflect the contents and purpose of the document.
• Parent Element - contains other elements nested within it and represents information about one instance of an entity
• Child Element - enclosed by the parent element and represents attributes describing the Parent Element
XML Specification 1.0 - defining rules and syntax that XML documents must to follow to be well-formed and valid
Well formed document – follow basic rules for all XML documents and can be processed by an XML processor
Valid document – a well-formed document that has been validated against rules in its XML schema document
Rules
• The first line of an XML document is the prologue
• An XML document has one and only one root element
• All elements must have a matching set of opening tag <> and a closing tag </>
XML documents can also have “empty element” that have no data value or other elements
• All elements must be properly nested, closing the tag that was opened last (LIFO)
• All elements can have attributes: additional data about a specific element, having a name-value pair in the format: attributeName=“attribute value” and appear within the beginning element name <>.
• Easy for humans to understand - provide the foundation for the creation of human-understandable tags (element names) to markup data with meta-data.
• Efficient for computers to process – provide the structure that enforces a strict hierarchy that results in efficient computers processing
• Element names, attributes and element hierarchy add meaning to the data values contained within elements.
• Reduce data re-entry and manual processing. --------------------------------------------------------------------------------------------------------------------------------------------------- XML SCHEMA
XML Schema Language - an XML language used to write other XML languages and vocabularies and to create XML schema documents
XML schema document - a well-formed XML document, defining the rules that a class of XML documents must follow, as well as each element, attribute and the overall structure. Each element appearing in an XML document is defined in an XML schema and each schema has its own unique namespace identifier.
XML vocabulary - written in the XML Schema language and defining a specific element, attribute and the overall structure of XML documents for a particular purpose
XML namespace - a Universal Resource Identifier used to uniquely identify each XML vocabulary. XML namespaces are declared in the root element of an XML instance document as attributes and each namespace is assigned a unique prefix to qualify elements and attributes. Any element in the document without a prefix belongs to the default namespace. (xmlns:prefix=”URI of namespace”) <Order xmlns="UBLOrderDocument" xmlns:cbc="UBLCommonBasicComponents" xmlns:cac="UBLCommonAggregateComponents">
XLink – a language using attributes to describe relationships between elements in XML documents
UBL Common Basic Components schema • all elements that are simple elements : <cbc:ID>1</cbc:ID> <xs:schema xmlns:xs=http://www.w3.org/2001/XMLSchema targetNamespace="UBLCommonBasicComponents" xmlns ="UBLCommonBasicComponents" elementFormDefault="qualified" attributeFormDefault="unqualified"> <!-- ===== Simple elements ===== --> <xs:element name=“ID” type=“xs:string”/>
• all elements that have simple content and an attribute (complex - attribute): <cbc: PriceAmount currencyID="USD">2</cbc: PriceAmount > <!-- ===== Elements with simple contents and attributes ===== --> <xs:element name="PriceAmount"> <xs:complexType> <xs:simpleContent> <xs:extension base="xs:decimal"> <xs:attribute name="currencyID" type="xs:string" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element>
xs:schema – root element targetNamespace – tie this schema to … namespace elementFormDefault="qualified” - element names will use a namespace prefix attributeFormDefault="unqualified” - attribute names will not use a namespace prefix xs:import – the import element identifies a local namespace and ties it to a URL so that the XML processor can find it xs:element – every element must have a name and a complexType xs:sequence – overall structure <xs:element ref="cbc:ID" minOccurs="1" maxOccurs="1"/> - an element names ID in the imported cbc schema must occur one and only one time. (Empty element)
When to use ref=
Use in a vocabulary based schema when you are importing namespaces to reference. The ref= indicates that you are referencing the imported namespace and the element is fully defined in that schema.
When to use name=
Use in a non-vocabulary schema typically because you are building the schema for the type of UBL instance document, you are not referencing another schema.
When to use minOccurs and maxOccurs
If the element is a parent and a child in a non-vocab-based schema document. I.e. root element=Order, BuyerCustomerParty is both a parent of other elements and a child of the root element, therefore it should have cardinalities.
If the element is in a vocab-based schema document
Validation - An instance document can be validated against the schema document to ensure the XML instance document is complete and properly structured according to its schema document. Well Formed: VALID Schema Validation: VALID
UBL – Universal Business Language UBL is an XML vocabulary of the standard, predefined element names, the content and the structure of common business documents to be used in e-business. UBL documents are not industry-specific, but provide a generic XML format for business documents that can be used between softwares and across industries. It has exactly the same data as XML, but more elements and more nesting.
Rules • One and only one Root Element • One and only one ID • One and only one IssueDate • Two Party elements: SellerSupplierParty; BuyerCustomerParty (one and only one) • At least one line element
Required elements (1) Purchase order <Order> • <ID> • <IssueDate> • < BuyerCustomerParty > o <Party> § <PartyName> § <PostalAddress> • < SellerSupplierParty > o <Party> § <PartyName> § <PostalAddress> • <OrderLine> (2) Sales order <Order> • <ID> • <SalesOrderID> • <IssueDate> • < BuyerCustomerParty > o <Party> § <PartyName> § <PostalAddress> • < SellerSupplierParty > o <Party> § <PartyName> § <PostalAddress> • <OrderLine>
Attributes – required on elements that contain monetary amounts and object measurements
XBRL - Extensible Business Reporting Language XBRL is an XML vocabulary for defining the structure and contents of accounting, finance, and business reports, making it understandable, reusable and precisely interpretable by computer applications. • X - Extensible: Tags extend use beyond original intended use • B - Business: Financial Statement Reporting • R - Reporting: US GAAP • L - Language: XML
Advantages • XBRL tagged data can be more effectively reported, stored, processed, and communicated over networks. • XBRL tagged data need not be re-entered and can be communicated in its original form. • XBRL instances document can be validated, analyzed, and used for multiple purposes by multiple parties. • XBRL benefits all members of the financial reporting supply chain.
XBRL Specification 2.1 - the most recent XBRL specification defining rules and syntax for XBRL instance documents, taxonomies and linkbases. The XBRL Specification includes a schema which define elements and the structure of all XBRL instance documents and schemas defining XBRL taxonomies.
XBRL Instance Document - an instance of a class of XML documents containing data tagged with predefined elements representing accounting and financial concepts in financial reports (financial statements, block disclosures and detailed disclosures) by a specific entity, at a specific entity, at a specific point in time, in a specific currency, and for a specific purpose. All XBRL instance documents must be well-formed and valid XML documents because they must follow the rules for all XML documents, as well as the rules for XBRL instance documents.
XBRL Taxonomies – is a dictionary of elements and their relationships for a specific reporting purpose, written in the XML Schema language. Each XBRL taxonomy includes a taxonomy schema, defining elements for a particular reporting purpose, and linkbases, defining relationships between elements. Each tag used in an XBRL instance document must be defined as an element in XBRL taxonomy.
Instance document structure • root element and namespace declarations o <xbrli:xbrl – root element xbrli defined in the xbrli namespace o xmlns:xbrli=“http://www.xbrl.org/2003/instance”– the contents and structure of all XBRL instance documents is defined (a schema) o xmlns:link="http://www.xbrl.org/2003/linkbase” – the contents and structure of all XBRL linkbases is defined (a schema) o xmlns:xlink="http://www.w3.org/1999/xlink"– the XML XLink language is defined (a schema) o xmlns:iso4217="http://www.xbrl.org/2003/iso4217"– XBRL extends the standard international currency codes (a schema) o xmlns:us-gaap="http://xbrl.fasb.org/us-gaap/2011"> – identify U.S. GAAP XBRL taxonomy (a schema) • schemaRef element o defined in the XBRL link namespace o links an XBRL taxonomy schema to this XBRL instance document • context element o defined in the xbrli namespace o id attribute starting with a letter o establishes the "reporting context" of an XBRL instance document by identifying the entity doing the reporting and the instant or duration of time that applies to the data items being reported • unit element o defined in the xbrli namespace o indentifies the units in which a numeric item is measured <xbrli:unit id="USD"> <xbrli:measure>iso4217:USD</xbrli:measure> </xbrli:unit> OR <xbrli:unit id="shares"> <xbrli:measure>xbrli:shares</xbrli:measure> </xbrli:unit> • XBRL item
Rules for choosing a XBRL element • Use elements from the U.S. GAAP XBRL taxonomy whenever possible • Read documentation description • Choose the element with the narrowest definition of the fact you are reporting • Consider using a line item element on the financial statements before a disclosure element • If using a disclosure element, use software to move it as a financial statement line element.
Decimal
in thousand
decimals="-3"
in million
decimals="-6"
accurate value
decimals="INF" or decimals="2"
percent
decimals="2"
Five industry entry points • Commercial and Industrial • Banking and Saving Institutions • Brokers and Dealers • Insurance • Real Estate
XBRL Linkbases – define relationships for accounting and financial reporting concepts, written in the XML XLink language. • Presentation – how elements appear in published financial statements • Calculation - how a series of elements sum up to another element • Dimension – How to create tables for footnote disclosures • Reference – provides relationships between elements and external regulations or standards • Label –elements are connected to human readable labels
Four levels tagging • Level : First year filer; Block Tagging, along with formatting • Level 2: Second year filers; Tag each accounting policy, along with formatting • Level 3: Second year filers; Tag each table, along with its formatting • Level 4: Second year filers; Tag each monetary value, % and number in the footnotes.
US GAAP XBRL 2011 taxonomy – was maintained by XBRL US; now maintained by FASB (2010) Non-US GAAP taxonomy – now maintained by SEC SEC does not require the XBRL tagged financial s to be audited.
XBRL mandated filing (3-year phase-in)
Company Type
Financial Statements
Block Footnotes
Detailed Footnotes
> 500 Billion in outstanding
12-15-2009
12-15-2009
12-15-2010
Large Companies
12-15-2010
12-15-2010
12-15-2011
Small and IFRS reporting companies
12-15-2011
12-15-2011
12-15-2012
Validation (3 steps) • Validating the XBRL instance document against XBRL taxonomy schema • Validating against additional schemas (xbrli document schema, US GAAP schema) • Validating relationships, calculations and dimensions against the linkbases
XSLT – Extensible Stylesheet Language for Transformations XSLT is a subset of the XSL language that is used to create Stylesheets and to transform XML instance documents into a presentation format. • X - Extensible: Tags extend use beyond original intended use • S – Stylesheet: What the data will look like • L - Language: Scripting • T - Transformations: Reuse, Repurpose, calculate, sort, etc.
Input: XML source document (containing elements, data values, but no format info) and XSLT document Output: XML result document
<?xml-stylesheet type="text/xsl" href="MyBikesReport.xsl"?> - connects the source document to the Stylesheet to be transformed (additional prolog statement in the instance document)
<xsl:template match="/"> - start the transformation process by matching to the entire source document
<BR/> - an empty element that adds a line break in the resulting Web page
<TR> - insert a new row in the table <TH> - column header <TD> - insert a new column in the row
Differences • Rules-based standard – detailed guidance Principles-based – professional judgment (excluding documentation; including disclosures & example references) • IFRS presents non-current assets and liabilities before current
iXBRL is XBRL tagged information within a HTML document • F/S data values are contained with iXBRL elements and the <iXBRL> tags are embedded with the <HTML> or <XHTML) tags • Web Browser ignores the <iXBRL> elements, but processes the <HTML> • iXBRL Processor converts the <iXBRL> elements to XBRL Instance Documents, to generate XBRL from iXBRL without reference to XBRL taxonomy
Advantages • Document in iXBRL format is rendered as a Web page instead of as an XBRL document, therefore humanly-readable • Eliminate the need to create an instance document of XBRL tagged financial statements data
XBRL Global Ledger is a combination of taxonomies developed and recognized by XBRL International as the standard way to represent the detailed data behind the Financial Reports (Chart of Accounts, Journal Entries, Source Documents, any financial information). It could be called XBRL Detailed Data and is valuable for internal, as well as external, reporting.
More than merely standardizing a "general ledger", XBRL GL was designed to help businesses to move information between, into and out from their accounting systems to integrate with external systems and share information with their accountants and external advisors.
Tags - add meaning to raw data and transfer it as information
Meta-Data - marked-up (tagged) data describing data by adding meaning to it
Meta-Language - A language that can be used to create other vocabularies • Universal Business Language (UBL) • Extensible Business Reporting Language (XBRL)
Vocabulary - a special purpose language
Financial Reporting Supply Chain - all stages of the preparation, approval, audit, analysis, and use of financial reports.
XBRL, defined by the AICPA
XBRL-Extensible Business Reporting Language- is a toolbox for creating accounting, finance, and business reports. It is an open standard which supports information modeling and the expression of semantic meaning commonly required in business reporting. XBRL is XML-based. It uses the XML syntax and related XML technologies such as XML Schema, XLink, XPath, Namespaces, etc. to articulate this semantic meaning. One use of XBRL is to define and exchange financial information, such as a financial statement. The XBRL Specification is developed and published by XBRL International, Inc. (XII). The XBRL US organization has been charged with developing the US GAAP specifications.
XBRL is a standards-based way to communicate business and financial information. These communications are defined by metadata set out in taxonomies. Taxonomies capture the definition of individual reporting concepts as well as the relationships between concepts and other semantic meaning.
A language for the electronic communication of business and financial data which is set to revolutionize business reporting around the world. The Center for Audit Quality (Center or CAQ) has developed a section on our Web site to include information about the XBRL initiative. The Center encourages our member firms to learn more about XBRL in order to understand how to obtain more rapid and reliable data on a company's financial performance which helps the flow of formation between investors and companies; greatly reduce effort and costs in gathering and analyzing data for benchmarking purposes; focus efforts on analysis and value-added work and to simplify and automate tasks makeing the work environment more efficent and cost friendly.
The SEC has embraced XBRL by proposing and adopting a final rule on an XBRL Voluntary Program. This program will allow registrants to submit voluntarily supplemental tagged financial information using the XBRL format as exhibits to specified EDGAR filings under the Securities Exchange Act of 1934 and the Investment Company Act of 1940. In addition, the PCAOB has issued guidance for auditors on how to audit these voluntary filings.
XBRL is an XML based taxonomy with which users can prepare, publish (in a variety of formats), exchange and analyze financial statements and the information they contain. An XBRL Instance Document is a business report, such as a financial statement prepared to the XBRL specification which is user friendly. The meaning of each value in the Instance Document is explained by the taxonomy. Therefore, any XML document containing XBRL elements is an instance document.
XBRL is developed by XBRL International, a consortium sponsored by the American Institute of Certified Public Accountants started in 1999. This group is committed to developing and promulgating a world-wide standard, and corresponding taxonomies, for storing or exchanging business reporting information.
For the latest explanations, news, and facts visit http://www.xbrl.org/WhatIsXBRL/
XBRL briefly
XBRL is a language for the electronic communication of business and financial data which is revolutionizing business reporting around the world. It provides major benefits in the preparation, analysis and communication of business information. It offers cost savings, greater efficiency and improved accuracy and reliability to all those involved in supplying or using financial data. XBRL is bringing new efficiencies to banking regulators worldwide and is also being highly promoted by the U.S. Securities and Exchange Commission (SEC). Other important backers of XBRL include the AICPA, the XBRL International , and the XBRL US. An important branch of the XBRL standards is XBRL GL.
XBRL GL
XBRL GL, the Global Ledger, is a standard for representing and communicating the information found in operational and accounting systems for data consolidation, data migration and archival purposes, bringing new efficiencies for integrating disparate systems and enabling new controls environments. XBRL allows it to be brought together, analysed and used in a highly cost-effective way, overcoming the inefficiencies of different accounting systems or approaches.
The Global Ledger allows the representation of anything that is found in an ERP systems: setup files, master files, transaction files and history files, and deals with information both financial and non-financial. It does not require a standardised chart of accounts to gather information, but it can be used to tie legacy charts of accounts and accounting detail to a standardised chart of accounts to improve communications within a business.
XBRL GL is reporting independent. It collects general ledger and after-the-fact receivables, payables, inventory and other non-financial facts, and then permits the representation of that information using traditional summaries and through flexible links to XBRL for reporting.
XBRL GL is system independent. Any developer can create import and export routines to convert information to XBRL GL format. This means that accounting software developers need only consider one design for their XML import/export file formats. Application service providers can offer to supply XBRL import and output so end-users can more easily use their own data. Companies developing operational products, such as point of sale systems or job costing, or reporting tools can link with many accounting products without needing specialised links to each one.
Taxonomies
Lists of elements and relationships for specific reporting purposes, such as reporting financial information under US GAAP. Each tag used in an XBRL instance document must be defined as an element in an XBRL taxonomy.
Taxonomies are a collection of XML schema documents and XML documents called linkbases by virtue of their use of XLink. The schema must ultimately extend the XBRL instance schema document and typically extend other published XBRL schemas on the xbrl.org website.
XML taxonomies are "vocabularies" or "dictionaries" created by a group in order to exchange information. In the future, there will be many XML taxonomies used to describe all types of data. What will drive the development of these taxonomies are industry groups, governmental agencies and other organizations.
XBRL Taxonomy Components (Files)
There are six basic files that comprise an XBRL Taxonomy:
Approved taxomony: One that has been given approved status by XBRL International. It must comply with the guidelines in the Financial Reporting Taxonomy Architecture and have been through an open review process and been used to create a number of XBRL instance documents.
US-GAAP Taxonomy: The taxonomy that has been approved for XBRL use can be easily found at http://www.xbrl.us/Taxonomies/Pages/default.aspx . Once on this website, you should go to the XBRL US GAAP Taxonomies 1.0 link. From there, select which industry you will need and start locating your element name. The US GAAP Taxonomies are are current as of December 4, 2008 and are open for public review until January 15, 2009. The press release associated with this Public Review is located at http://www.xbrl.us/press/Pages/20081125.aspx.
Schema
The XBRL taxonomy schema file defines the actual concepts that make up an XBRL taxonomy. It gives their names, their data types, period type, whether you can report about them etc. The properties of concepts (elements) are defined in the XBRL Specification. The reserved word schema is the required root element name for all XML schema documents.
An XML schema is a description of a type of XML document, typically expressed in terms of constraints on the structure and content of documents of that type, above and beyond the basic syntax constraints imposed by XML itself. An XML schema provides a view of the document type at a relatively high level of abstraction.
Schemas define Item and Tuple "concepts" using elements. Concepts provide names for the fact and indicate whether or not it's a tuple or item, what type of data it contains (monetary, numeric, fractional, textual, etc.) among some other metadata. Items and Tuples can be regarded as "implementations" of concepts, or specific instances of a concept. A good analogy for those familiar with object oriented programming would be that Concepts are the classes and Items and Tuples are Object instances of those classes. In addition to defining concepts, Schemas reference linkbase documents.
This article is a beginners guide (from a beginner, to other beginners) on writing simple XSDs. If you're new to them, check it out.
A beginner's guide to xsd (xml shcemas)
Linkbases
An XBRL linkbase file contains the explicit relationship definitions between the concepts defined in the XBRL schema. There are five linkbase types defined by the XBRL version 2.1 specification:
1) The label linkbase allows the user to attach labels with different roles and languages to a given concept.
2) The reference linkbase the user to attach external information (sources) to concepts.
3) The presentation linkbase defines how concepts are nested and ordered.
4) The calculation linkbase defines how values of concepts should sum up from one to another.
5) The definition linkbase allows the user to define additional semantics.
Linkbases are a collection of Links, which themselves are a collection of locators, arcs, and potentially resources. Locators are elements that essentially reference a concept and provide an arbitrary label for it. In turn, arcs are elements indicating that a concept links to another concept by referencing the labels defined by the locators. Some arcs link concepts to other concepts. Other arcs link concepts to resources, the most common of which are human-readable labels for the concepts.
Element
A matching beginning and ending tag set and its contents, or an empty element. An XML element can contain a data item or other elements nested within it. It is the basic unit of content in the XML document. The tag name is always contained within <> brackets and the ending tag name starts with a / slash.
Complex Elements
XML elements that contain other elements nested within or elements with attributes. They must be defined with a complexType element in an XML schema.
Examples of complex elements
Simple Elements
XML elements that do not contain other elements or attributes. They contain a data item and must be defined with a data type in an XML schema. Usually used for data that is self-containing and needs no further breakdown.
Examples of simple elements
Attributes
Add meaning to a specific XML element. XML attributes always have a name-value pair in the format: attributeName="attributeValue". They can appear in any XML element and are always found in the beginning element name tag. Helps to describe the element in terms that can help the user better understand the data.
attribute examples
XML attribute descriptions
Namespace Attribute
A namespace declaration in the form of xmlns:prefix="URI of namespace" usually appearing in the start tag of a document's root element.
In XML, the namespace specification enables the names of elements and attributes in an XML document to be unique, similar to the role of namespaces in a programming language. Using XML namespaces, XML documents may contain element or attribute names from more than one XML vocabulary.
Stylesheet
A generic term used to describe XSLT documents. It refers to the original purpose of the XSLT language: to apply style to XML documents. Styleheet allows an XML document to be transformed into an output that is more human friendly and understandable
XML-stylesheet
The reserved word for the instruction that ties an XML document to an XML stylesheet. As used XSLT, it appears as follows in the prolog of an XML document: URI of the stylesheet document"?>
xsl:stylesheet
The root element of an XSLT document. "stylesheet" is the key word for the root element, and "xsl" is its namespace identifier.
id attribute
Required on both the context and unit elements in an XBRL instance document. It is used for reference purposes on individual XBRL items reported in the instance document.
entity element
Identifies the entity doing the reporting in an XBRL instance document. It must contain an identifier element with a scheme attribute:
It can also contain a scenario element with values such as budgeted, restated, pro forma, etc. Also, it can incorporate web addresses such as the URL for the stock exchange which the reporting company is traded on.
Unit element
Identifies the unit of measure that applies to numeric items in an XBRL instance document. It must contain an id attribute for reference purposes and a measure element:
schemeRef element
First child element of the xbrl root element in an XBRL instance document. It must have two XLink attributes:
Period element
Identifies the period of time for which items are being reported in an XBRL instance document.
It must contain either an instant element or elements to identify a duration of time:
Which is useful for documents such as the balance sheet, which presents financial data relevant to a specific time instead of a period of time.
Or
Which is useful for documents such as the income statements and Cash flow statements, which present data relevant to a period of time rather than a specific date.
Or - it can contain a element for long-lived items.
Identifier element
Required child element of an entity element. It must contain a scheme attribute and a value that uniquely identifies the entity doing the reporting:
Measure element
Required child element of a unit element. It identifies a specific unit of measure for numeric items in an XBRL instance document and is required to have the form:
Instance documents
Well-formed XML documents that follow the rules for the class of documents known as XBRL instance documents as defined in the XBRL Specification. XML is a set of rules and syntax that provides a foundation usede to create XML documents and other languages and specifications that extend the XML family of technologies. XBRL builds on the XML foundation to create a specification for business reporting, including financial and other business performance reporting. Based on the XML foundation, the XBRL is a second set of rules and syntax to follow to create XBRL "instance documents" and extensions. XBRL documents are referred to as "instance documents" because each one is an instance of a class of documents described in the XBRL Specification. Like all XML specifications, the XBRL specification is quite complex and XBRL instance documents look complex to the uninformed user. Instance documents contain tags describing the data, the tags on an instance document are defined in a Schema, and the relationships between tags are defined in Linkbases. The combination of Schemas and Linkbases are known as Taxonomy.
Prologue
The first part of an XML document that contains processing instructions to be used by an XML processor and often contains comments. The prolog always appears before the root element. You can have one or many prologues, but each XML document must begin with the prologue below. Another prologue which can be useful is linking your XML document to an XLST Schema document. To do this insert the following prologue after the first prologue below: <?xml-stylesheet type="text/xsl" href="TheNameofYourSchemaDocument.xsl"?>
<?xml version="1.0" encoding="UTF-8"?>Well-formed XML documents
Documents that follow the basic rules (one and only one root element; matching beginning and ending element names; all elements must be properly nested; all elements can contain attributes) for all XML documents and can therefore be processed by an XML processor.
XML, a well-formed document must conform to the following rules, among others:
- Non-empty elements are delimited by both a start-tag and an end-tag.
- The first line of the XML document must contain the prologue.
- The root element must enclose all other elements in the document.
- Empty elements may be marked with an empty-element (self-closing) tag, such as . This is equal to .
- All attribute values are quoted with either single (') or double (") quotes. Single quotes close a single quote and double quotes close a double quote.
- Tags may be nested but must not overlap. Each non-root element must be completely contained in another element.
- The document complies with its declared character encoding. The encoding may be declared or implied externally, such as in "Content-Type" headers when a document is transported through HTTP, or internally, using explicit markup at the very beginning of the document. When no such declaration exists, a Unicode encoding is assumed, If the mark does not exist, UTF-8 encoding is assumed.
Element names are case-sensitive.Root Element
The first element in an XML document. It is the parent element for the entire XML document - often referred to as the "document" element. All other elements in the XML document are nested within in.
Empty Elements
XML elements that do not contain a data item or other elements nested within and there have a special format that includes a "/" preceding its closing bracket.
Simple linking
The linking capability of HTML as seen in Web pages. It is unidirectional from a source document to a target document.
Templates
Wording for a set of XSLT (a template matching language) instructions. Templates are known as a set of rules that a document must follow.
xsl:template
xsl:template is used to identity the beginning of a template in an XSLT document. All transformation instructions takeplace within the initial template. Instructions such as <xsl:template match="/"> can be used to format the entire source document.
XSLT processor
A software package that can process XSLT instructions to transform XML documents. Internet Explorer is an example of software that can process XSLT script and transform it into an XML document.
Scripting language
A programming language that is "interpreted" by a processor as the code is being processed.
Extensible Stylesheet Language for Transformation (XSLT)
An easily understood but very powerful scripting language for transforming XML documents from one form to another. XSLT is a subset of XSL and is part of the XML foundation.
xsl:value-of select="a node"
An XSLT instruction to find "a node" and "select" its value for inclusion in a result document.
4/5/2008 (Don Cory):
I found the following site while doing the homework for chapter 4. It is the International Accounting Standards Committee Foundation and contains the latest news, online tools, and a useful glossary for XBRL in the international community. Even though It is an international organization I found information that helped me understand our material to a greater degree. The latest news includes the near release of the International Financial Reporting Standards (IFRS) Taxonomy for 2008: iasb.org
Introduction to XBRL
There are many stages in the financial reporting supply chain. These include the prperation, approval, audit, analysis, and use of the financial statements.
Participants in the supply chain include accountants working within organizations, company management, boards of directors, audit comittees, outside auditors, standard setters, regulators, investment bankers, lawyers, credit rating agencies, investors, and others.
XBRL could be a useful tool to help all these particpants find and interpret the information. XBRGL takes this a set further by attempting to have a standard for all the information going into the supply chain.
Here is a review of CH's 1 - 4
Business data – accounting and financial data
CH 1
Extensible- can be added to (if rules are followed)
Markup data surrounded by tags which add meaning (tagged)
Language- method of communication
XML- extensible markup language,
language used to add the meaning and context to data
allows data to written (marked up) in a universal way so it can be unambiguously understood
XBRL- extensible business reporting language
Why? To add meaning (tags) and context (the hierarchy) to business data making it understandable, reusable and processed by a computer, data is transmitted more effectively and efficiently as information across networks, allowing manual processes to be automated.
Business advantages of XBRL- why markup business data? So it can be better processed by computers enabling the data to be analyzed, reported, compared and understood, XBRL is the tool used to make reporting more effective and efficient
XBRL International- head authority on XBRL rules, trying to create a standard set of tags for all business information. Made up of over 400 companies, organizations and government entities.
XBRL US - responsible for developing US GAAP standards
XBRL Specifications- defines rules and syntax for XBRL instance documents and taxonomies
Tags- By putting tags around data you add meaning to raw data making it information
XBRL Taxonomies- defines the tag names that represent business data in an instance document
Leads to- each piece of data reported can be traced to a specific entity, time and currency (unit).
Benefit- result is the XBRL instance document can be validated, stored, processed and transmitted by a computer, and the data contained in the document can be analyzed, compared, reused and understood
Meta-Data- data that’s marked up (tagged) to adds meaning to the data, data about data. XBRL is an example of meta-data.
XBRL Instance Document- instance b/c it is an instance of a class of documents described in the XBRL specifications, contain facts reported by a specific entity at a specific time and currency under identifiable guidelines (GAAP), make accounting information transparent
Benefit - the standardized representation of accounting and financial information and is easily understood by third parties.
CH 2
XML
Impossible to determine what the information contained in the document will be used for, XML is case sensitive
Design goals- usable over the web, support many applications and be human readable
Specifications- describes the rules a XML document must follow to be well formed and valid
Well formed- follow the rules of the XML specifications and can be processed
Valid- follow additional rules for specific classes of XML documents (Schema, DTD), data is tagged in a nested parent-child hierarchy
Element- a beginning and ending tag set, they don’t need to contain data, can contain attributes, no spaces use “_”, cant start name with xml
Empty element- doesn’t contain a value or have any nested elements only attributes, always ends with “/”
Attributes- adds additional data about a element in the beginning tag, can have many, can use to distinguish b/w elements or restrict the acceptable values
attrbuteName=”attributeValue”
Root element- parent element of the entire document (document element, node), all other elements are nested with in it, document always begins (after prolog) and ends with the root – XBRL doc root element name is “xbrl”, Schema doc root is “schema”. An XML document may have one and only one root element.
Simple elements are elements that contain data values
Complex elements are elements that contain other elements
Prolog- contains the processing instructions for the document composed of an XML declaration and the version of XML used, may contain a statement about what the purpose and/or file name of the document is
UBL refers to the purchase of goods and services as the "procurement process" and the selling, delivery and invoicing of these goods and services as the "fulfillment and billing processes"
Chapter 3 Summary
There are several XML languages that form the foundation for validating and processing XML documents and building XML vocabularies, such as XBRL. The XML Schema language is the language used to build XML schema documents and is the foundation language for all XML languages and vocabularies. XML schema documents define each element and attribute that can appear in a class of XML documents and the overall structure of such documents. XML schema documents are designed to be read by XML-enabled software applications and used to validate instances of the class of XML documents they define. Because SML is a foundation language for the creation of other languages, XML vocabularies are being developed all around the world for a variety of purposes. XML Namespaces is a foundation language used to identify each XML vocabulary. XML namespaces are declared in the root element of an XML document and each is assigned a unique prefix to be used to qualify elements and attributes that appear in the XML document. The XML Linking Language (XLink) is a foundation language to enable sophisticated linking capabilities in XML documents. It specifies a set of attributes to be used to create multidirectional links and relationships between elements in XML documents and other addressable resources.
Purpose of XML Schema: to define rules that XML document must follow.
Schema is an well-formed XML document.
Schema defines: 1) each element and attribute that appears in the XML document 2) overall structure
Each XML vocabulary schema: 1) is created for specific purpose 2) has its own XML name space which is a unique identifier (URI-Universal Unique Identifier). XML name spaces identify source of schema.
By identifying each schema’s location with an XML name space we can differentiate the elements and attributes defines in one schema from the other schema.
2 Types of schema:
1) Common aggregate components schema defines structure of complex elements with a CAC prefix
2) Common basic components schema defines elements with CBC prefix. Basic Components Elements have simple content or an attribute such as <Base Quantity unitCode=”Unit”>1</Base quantity> (although BaseQuantity os an is considered to be complex element because it has an attribute that tells how the simple content value is measured)
Chapter 4 Summary - XBRL Instance Documents
XBRL instance documents are reports that contain facts, generically referred to as “items,” reported by a specific entity at a specific point in time. XBRL instance documents have a prescribed set of elements and a prescribed format.
XBRL Instance Document Format
· The root element is xbrl. The root element will contain all applicable namespace declaration attributes.
example:
<xbrl xmlns:us-gaap="http://xbrl.us/us-gaap/2008-03-31" xmlns:xlink="http://www.w3.org/1999/xlink">
</xbrl>
· The first child element is a schemaRef element. It is required to have two attributes: xlink:type=”simple” and xlink:href=”the URI of a taxonomy schema”. There can be more than one schemaRef element and they can be followed by linkbaseRef elements.
example:
<schemaRef xlink:type="simple" xlink:href="http://www.xbrl.us/us-gaap/1.0/elts/us-gaap-std-2008-03-31.xsd"/>
· It must have a least one context element that must contain an entity element and a period element. It can optionally contain a scenario and a segment element.
example:
<context id="MYBKYE2007">
<entity>
<identifier scheme="http://www.nasdaq.com">MYBK</identifier>
</entity>
<period>
<instant>2007-12-31</instant>
</period>
</context>
· If numeric items are being reported, it must contain a unit element with an appropriate measure element.
example:
<unit id="USD">
<measure>iso4217:USD</measure>
</unit>
· It must have at least one item. The name of the item must be defined as an element in one of the taxonomy schemas identified in a schemaRef element. The item must also have a contextRef attribute and if it is numeric, a unitRef and a decimals or a precision attribute.
example:
<us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="MYBKYE2007" unitRef="USD" balance="debit" decimals="0">5393000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
Chapter 5 Summary
XSLT documents are XML documents that contain instructions to apply to nodes in an XML source document to transform it into an XML result document. An XSLT processor reads both the XSLT document and the XML source document, interprets the XSLT instructions, and the applies them to the source documents to create an XML result document. Since all documents being processed are XML documents, XSLT transformation can be accomplished by any up-to-date XML-enabled software, eliminating the need for proprietary software and expensive hardware.
<?xml version="1.0" ?>
- <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:us-gaap="http://www.xbrl.us/us-gaap/2008-03-31" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.0">
**-** <xsl:template match="/">
**-** <HTML>
**-** <CENTER>
**-** <H3>
Current Assets and Liabilities Report
<BR />
MyBikes.com
<BR />
As of:
<xsl:value-of select="instant" />
</H3>
**-** <TABLE BORDER="0">
**-** <TR>
**-** <TD>
<xsl:value-of select="us-gaap:CashAndCashEquivalentsAtCarryingValue/@label" />
</TD>
**-** <TD align="right">
<xsl:value-of select="format-number(//us-gaap:CashAndCashEquivalentsAtCarryingValue,'$#,##0')" />
</TD>
</TR>
Appendix: XBRL--Global Ledger
XBRL GL is a set of taxonomies to standardize the detail found in reports such as Chart of Accounts, Journal Entries, Source Documents, etc.
The required elements for XBRL GL are as follows:
<xbrl...>
<schemaRef...>
<context...>
<unit...>
<gl-cor:accountingEntries...>
<gl-cor:documentInfo...>
<gl-cor:entityInformation...>
<gl-cor:entryHeader...>
<gl-cor:entryDetail...>
</gl-cor:accountingEntries>
</schemaRef>
</xbrl>
The "Document Information" will provide descriptions of the actual accounting entries, such as period covered start and end, period count, period unit, etc.
The "Entity Information" will provide descriptive information about that Entity's accounting entries, such as entity phone number, address, fiscal year start and end, etc.
"Entry Information" does exactly what it sounds like; it provides information, such as journal description, posting codes, responsible person, etc.
Finally, "Entry Detail" drills down to the details of financial information, such as sub-account information, entry accounting methods, purposes of accounts, etc.
The goal of XBRL GL is to make it possible and make it more efficient to represent journal entries, general and special ledger information, and operations information in a way that is readable and useable across the board.
Final Exam Review (Spring 2011)
XML
XML - Extensible Markup Language
XML is a meta-language used to create other XML documents and other vocabularies for specific purposes. It describes basic rules and syntax that XML documents must follow instead of a specific vocabulary itself.
• X - Extensible: Tags extend use beyond original intended use
• M - Markup: Data surrounded by tags which add meaning
• L - Language: Communication method
Applications
• Instance Document .xml: contains the data
• Schema Document .xsd : describes allowed structure (data types, element names) of instance document
• Stylesheet .xsl: formatting instructions for data in the instance document
Element - a matching beginning and ending tag name, and its contents, or an empty element. It is the basic unit of content in an XML document. An element can have one and only one parent, except the root element.
Simple Element – elements containing data values
Complex Element - elements containing other elements nested within them (complex - parent) or elements with attributes (complex - attribute)
Empty Element – not containing any data value or other elements nested within; opens and closes in the same tag
<Address addressType="billing" sameAsShipping="yes"/>
Hierarchy
• Prologue - containing processing instructions to be used by an XML processor and comments
<?xml version="1.0" encoding=UTF-8”?>
<!-- Enter comments here -->
• Root Element - the first element and the parent element for the entire XML document, enclosing all the other elements nested within it. The ending root element name is the last one in the document. The root element’s name should reflect the contents and purpose of the document.
• Parent Element - contains other elements nested within it and represents information about one instance of an entity
• Child Element - enclosed by the parent element and represents attributes describing the Parent Element
XML Specification 1.0 - defining rules and syntax that XML documents must to follow to be well-formed and valid
Well formed document – follow basic rules for all XML documents and can be processed by an XML processor
Valid document – a well-formed document that has been validated against rules in its XML schema document
Rules
• The first line of an XML document is the prologue
• An XML document has one and only one root element
• All elements must have a matching set of opening tag <> and a closing tag </>
XML documents can also have “empty element” that have no data value or other elements
• All elements must be properly nested, closing the tag that was opened last (LIFO)
• All elements can have attributes: additional data about a specific element, having a name-value pair in the format: attributeName=“attribute value” and appear within the beginning element name <>.
<PriceAmount currencyID="USD">32.99</ PriceAmount>
<BaseQuantity unitCode="UNIT">32.99</ BaseQuantity>
Advantages
• Easy for humans to understand - provide the foundation for the creation of human-understandable tags (element names) to markup data with meta-data.
• Efficient for computers to process – provide the structure that enforces a strict hierarchy that results in efficient computers processing
• Element names, attributes and element hierarchy add meaning to the data values contained within elements.
• Reduce data re-entry and manual processing.
---------------------------------------------------------------------------------------------------------------------------------------------------
XML SCHEMA
XML Schema Language - an XML language used to write other XML languages and vocabularies and to create XML schema documents
XML schema document - a well-formed XML document, defining the rules that a class of XML documents must follow, as well as each element, attribute and the overall structure. Each element appearing in an XML document is defined in an XML schema and each schema has its own unique namespace identifier.
XML vocabulary - written in the XML Schema language and defining a specific element, attribute and the overall structure of XML documents for a particular purpose
XML namespace - a Universal Resource Identifier used to uniquely identify each XML vocabulary. XML namespaces are declared in the root element of an XML instance document as attributes and each namespace is assigned a unique prefix to qualify elements and attributes. Any element in the document without a prefix belongs to the default namespace.
(xmlns:prefix=”URI of namespace”)
<Order xmlns="UBLOrderDocument"
xmlns:cbc="UBLCommonBasicComponents"
xmlns:cac="UBLCommonAggregateComponents">
XLink – a language using attributes to describe relationships between elements in XML documents
UBL Common Basic Components schema
• all elements that are simple elements : <cbc:ID>1</cbc:ID>
<xs:schema xmlns:xs=http://www.w3.org/2001/XMLSchema
targetNamespace="UBLCommonBasicComponents"
xmlns ="UBLCommonBasicComponents"
elementFormDefault="qualified"
attributeFormDefault="unqualified">
<!-- ===== Simple elements ===== -->
<xs:element name=“ID” type=“xs:string”/>
• all elements that have simple content and an attribute (complex - attribute): <cbc: PriceAmount currencyID="USD">2</cbc: PriceAmount >
<!-- ===== Elements with simple contents and attributes ===== -->
<xs:element name="PriceAmount">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:decimal">
<xs:attribute name="currencyID" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
UBL Common Aggregate Components schema
• complex elements used in UBL documents (complex - parent): <cac: Party>
<xs:schema xmlns:xs=http://www.w3.org/2001/XMLSchema
targetNamespace="UBLCommonAggregateComponents"
xmlns =" UBLCommonAggregateComponents "
xmlns:cbc ="UBLCommonBasicComponents"
elementFormDefault="qualified"
attributeFormDefault="unqualified">
<!-- ===== Import ===== -->
<xs:import namespace="UBLCommonBasicComponents" schemaLocation="http://www.buec.udel.edu/whitec/UBLCommonBasicComponents/UBLCommonBasicComponentsSchema.xsd"/>
<!-- ===== Aggregate elements ===== -->
<xs:element name="Party">
<xs:complexType>
<xs:sequence>
<xs:element ref="PartyName" minOccurs="1" maxOccurs="1"/>
<xs:element ref="PostalAddress" minOccurs="1" maxOccurs="1"/>
<xs:element ref="Contact" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Data type
• string
• Integer
• date
• decimal
xs:schema – root element
targetNamespace – tie this schema to … namespace
elementFormDefault="qualified” - element names will use a namespace prefix
attributeFormDefault="unqualified” - attribute names will not use a namespace prefix
xs:import – the import element identifies a local namespace and ties it to a URL so that the XML processor can find it
xs:element – every element must have a name and a complexType
xs:sequence – overall structure
<xs:element ref="cbc:ID" minOccurs="1" maxOccurs="1"/> - an element names ID in the imported cbc schema must occur one and only one time. (Empty element)
When to use ref=
Use in a vocabulary based schema when you are importing namespaces to reference. The ref= indicates that you are referencing the imported namespace and the element is fully defined in that schema.
When to use name=
Use in a non-vocabulary schema typically because you are building the schema for the type of UBL instance document, you are not referencing another schema.
When to use minOccurs and maxOccurs
If the element is a parent and a child in a non-vocab-based schema document. I.e. root element=Order, BuyerCustomerParty is both a parent of other elements and a child of the root element, therefore it should have cardinalities.
If the element is in a vocab-based schema document
Validation - An instance document can be validated against the schema document to ensure the XML instance document is complete and properly structured according to its schema document.
Well Formed: VALID
Schema Validation: VALID
---------------------------------------------------------------------------------------------------------------------------------------------------
UBL
UBL – Universal Business Language
UBL is an XML vocabulary of the standard, predefined element names, the content and the structure of common business documents to be used in e-business. UBL documents are not industry-specific, but provide a generic XML format for business documents that can be used between softwares and across industries.
It has exactly the same data as XML, but more elements and more nesting.
Rules
• One and only one Root Element
• One and only one ID
• One and only one IssueDate
• Two Party elements: SellerSupplierParty; BuyerCustomerParty (one and only one)
• At least one line element
Required elements
(1) Purchase order
<Order>
• <ID>
• <IssueDate>
• < BuyerCustomerParty >
o <Party>
§ <PartyName>
§ <PostalAddress>
• < SellerSupplierParty >
o <Party>
§ <PartyName>
§ <PostalAddress>
• <OrderLine>
(2) Sales order
<Order>
• <ID>
• <SalesOrderID>
• <IssueDate>
• < BuyerCustomerParty >
o <Party>
§ <PartyName>
§ <PostalAddress>
• < SellerSupplierParty >
o <Party>
§ <PartyName>
§ <PostalAddress>
• <OrderLine>
Attributes – required on elements that contain monetary amounts and object measurements
---------------------------------------------------------------------------------------------------------------------------------------------------
XBRL
XBRL - Extensible Business Reporting Language
XBRL is an XML vocabulary for defining the structure and contents of accounting, finance, and business reports, making it understandable, reusable and precisely interpretable by computer applications.
• X - Extensible: Tags extend use beyond original intended use
• B - Business: Financial Statement Reporting
• R - Reporting: US GAAP
• L - Language: XML
Advantages
• XBRL tagged data can be more effectively reported, stored, processed, and communicated over networks.
• XBRL tagged data need not be re-entered and can be communicated in its original form.
• XBRL instances document can be validated, analyzed, and used for multiple purposes by multiple parties.
• XBRL benefits all members of the financial reporting supply chain.
XBRL Specification 2.1 - the most recent XBRL specification defining rules and syntax for XBRL instance documents, taxonomies and linkbases. The XBRL Specification includes a schema which define elements and the structure of all XBRL instance documents and schemas defining XBRL taxonomies.
XBRL Instance Document - an instance of a class of XML documents containing data tagged with predefined elements representing accounting and financial concepts in financial reports (financial statements, block disclosures and detailed disclosures) by a specific entity, at a specific entity, at a specific point in time, in a specific currency, and for a specific purpose.
All XBRL instance documents must be well-formed and valid XML documents because they must follow the rules for all XML documents, as well as the rules for XBRL instance documents.
XBRL Taxonomies – is a dictionary of elements and their relationships for a specific reporting purpose, written in the XML Schema language. Each XBRL taxonomy includes a taxonomy schema, defining elements for a particular reporting purpose, and linkbases, defining relationships between elements.
Each tag used in an XBRL instance document must be defined as an element in XBRL taxonomy.
Instance document structure
• root element and namespace declarations
o <xbrli:xbrl – root element xbrli defined in the xbrli namespace
o xmlns:xbrli=“http://www.xbrl.org/2003/instance”– the contents and structure of all XBRL instance documents is defined (a schema)
o xmlns:link="http://www.xbrl.org/2003/linkbase” – the contents and structure of all XBRL linkbases is defined (a schema)
o xmlns:xlink="http://www.w3.org/1999/xlink"– the XML XLink language is defined (a schema)
o xmlns:iso4217="http://www.xbrl.org/2003/iso4217"– XBRL extends the standard international currency codes (a schema)
o xmlns:us-gaap="http://xbrl.fasb.org/us-gaap/2011"> – identify U.S. GAAP XBRL taxonomy (a schema)
• schemaRef element
o defined in the XBRL link namespace
o links an XBRL taxonomy schema to this XBRL instance document
• context element
o defined in the xbrli namespace
o id attribute starting with a letter
o establishes the "reporting context" of an XBRL instance document by identifying the entity doing the reporting and the instant or duration of time that applies to the data items being reported
• unit element
o defined in the xbrli namespace
o indentifies the units in which a numeric item is measured
<xbrli:unit id="USD">
<xbrli:measure>iso4217:USD</xbrli:measure>
</xbrli:unit>
OR
<xbrli:unit id="shares">
<xbrli:measure>xbrli:shares</xbrli:measure>
</xbrli:unit>
• XBRL item
Rules for choosing a XBRL element
• Use elements from the U.S. GAAP XBRL taxonomy whenever possible
• Read documentation description
• Choose the element with the narrowest definition of the fact you are reporting
• Consider using a line item element on the financial statements before a disclosure element
• If using a disclosure element, use software to move it as a financial statement line element.
Decimal
Five industry entry points
• Commercial and Industrial
• Banking and Saving Institutions
• Brokers and Dealers
• Insurance
• Real Estate
XBRL Linkbases – define relationships for accounting and financial reporting concepts, written in the XML XLink language.
• Presentation – how elements appear in published financial statements
• Calculation - how a series of elements sum up to another element
• Dimension – How to create tables for footnote disclosures
• Reference – provides relationships between elements and external regulations or standards
• Label –elements are connected to human readable labels
Four levels tagging
• Level : First year filer; Block Tagging, along with formatting
• Level 2: Second year filers; Tag each accounting policy, along with formatting
• Level 3: Second year filers; Tag each table, along with its formatting
• Level 4: Second year filers; Tag each monetary value, % and number in the footnotes.
US GAAP XBRL 2011 taxonomy – was maintained by XBRL US; now maintained by FASB (2010)
Non-US GAAP taxonomy – now maintained by SEC
SEC does not require the XBRL tagged financial s to be audited.
XBRL mandated filing (3-year phase-in)
Validation (3 steps)
• Validating the XBRL instance document against XBRL taxonomy schema
• Validating against additional schemas (xbrli document schema, US GAAP schema)
• Validating relationships, calculations and dimensions against the linkbases
---------------------------------------------------------------------------------------------------------------------------------------------------
XSLT
XSLT – Extensible Stylesheet Language for Transformations
XSLT is a subset of the XSL language that is used to create Stylesheets and to transform XML instance documents into a presentation format.
• X - Extensible: Tags extend use beyond original intended use
• S – Stylesheet: What the data will look like
• L - Language: Scripting
• T - Transformations: Reuse, Repurpose, calculate, sort, etc.
Input: XML source document (containing elements, data values, but no format info) and XSLT document
Output: XML result document
<?xml-stylesheet type="text/xsl" href="MyBikesReport.xsl"?> - connects the source document to the Stylesheet to be transformed (additional prolog statement in the instance document)
<xsl:template match="/"> - start the transformation process by matching to the entire source document
<BR/> - an empty element that adds a line break in the resulting Web page
<TR> - insert a new row in the table
<TH> - column header
<TD> - insert a new column in the row
---------------------------------------------------------------------------------------------------------------------------------------------------
IFRS XBRL
Differences
• Rules-based standard – detailed guidance
Principles-based – professional judgment (excluding documentation; including disclosures & example references)
• IFRS presents non-current assets and liabilities before current
---------------------------------------------------------------------------------------------------------------------------------------------------
iXBRL
iXBRL is XBRL tagged information within a HTML document
• F/S data values are contained with iXBRL elements and the <iXBRL> tags are embedded with the <HTML> or <XHTML) tags
• Web Browser ignores the <iXBRL> elements, but processes the <HTML>
• iXBRL Processor converts the <iXBRL> elements to XBRL Instance Documents, to generate XBRL from iXBRL without reference to XBRL taxonomy
Advantages
• Document in iXBRL format is rendered as a Web page instead of as an XBRL document, therefore humanly-readable
• Eliminate the need to create an instance document of XBRL tagged financial statements data
---------------------------------------------------------------------------------------------------------------------------------------------------
XBRL – GL
XBRL Global Ledger is a combination of taxonomies developed and recognized by XBRL International as the standard way to represent the detailed data behind the Financial Reports (Chart of Accounts, Journal Entries, Source Documents, any financial information). It could be called XBRL Detailed Data and is valuable for internal, as well as external, reporting.
More than merely standardizing a "general ledger", XBRL GL was designed to help businesses to move information between, into and out from their accounting systems to integrate with external systems and share information with their accountants and external advisors.
---------------------------------------------------------------------------------------------------------------------------------------------------
GENERAL
Tags - add meaning to raw data and transfer it as information
Meta-Data - marked-up (tagged) data describing data by adding meaning to it
Meta-Language - A language that can be used to create other vocabularies
• Universal Business Language (UBL)
• Extensible Business Reporting Language (XBRL)
Vocabulary - a special purpose language
Financial Reporting Supply Chain - all stages of the preparation, approval, audit, analysis, and use of financial reports.
---------------------------------------------------------------------------------------------------------------------------------------------------